// Decompiled by DJ v3.7.7.81 Copyright 2004 Atanas Neshkov  Date: 2007-9-15 18:54:00


// Source File Name:   ks.java

package com.zelix;

import java.io.DataOutputStream;
import java.io.IOException;
import java.util.Hashtable;


//            js, fh, jm, is, 
//            zs, sm, lt, ls, 
//            mt

public class ks extends js
    implements sm
{

    zs i;

    ks(int j, jm jm1, zs zs1)
    {
        super(j, jm1);
        i = zs1;
    }

    ks(ls ls, zs zs1)
    {
        super(((is) (ls)).e, ((is) (ls)).f);
        i = zs1;
    }

    public void a(Hashtable hashtable)
    {
label0:
        {
            if(super.f.e() == this)
                return;
            String s = i.b();
            String s1 = (String)hashtable.get(s);
            if(s1 != null)
            {
                i.a(s1);
                if(!is.g)
                    break label0;
            }
            s1 = is.a(s, hashtable);
            if(!s.equals(s1))
                i.a(s1);
        }
    }

    public void a(zs zs1, zs zs2)
    {
        if(i == zs1)
            i = zs2;
    }

    public mt n()
    {
        String s = lt.c(b());
        if(s != null)
            return fh.a(s);
        else
            return null;
    }

    public String h()
    {
        return a();
    }

    public String a()
    {
        return i.b().replace('/', '.');
    }

    public String b()
    {
        return i.b();
    }

    public zs a()
    {
        return i;
    }

    public String o()
    {
        String s = i.b();
        return h(s);
    }

    private static String h(String s)
    {
        int j;
        boolean flag;
        flag = is.g;
        if(s.endsWith(";"))
            return s;
        j = 0;
        if(!flag) goto _L2; else goto _L1
_L1:
        j++;
_L2:
        if(s.charAt(j) != '[')
        {
            String s1 = s.substring(0, j);
            if(j == s.length() - 1)
            {
                if(j > 0)
                {
                    switch(s.charAt(j))
                    {
                    case 66: // 'B'
                    case 67: // 'C'
                    case 68: // 'D'
                    case 70: // 'F'
                    case 73: // 'I'
                    case 74: // 'J'
                    case 83: // 'S'
                    case 90: // 'Z'
                        return s;
                    }
                    return s1 + "L" + s.charAt(j) + ";";
                } else
                {
                    return s1 + "L" + s + ";";
                }
            } else
            {
                return s1 + "L" + s.substring(j) + ";";
            }
        }
        if(true) goto _L1; else goto _L3
_L3:
    }

    public int l()
    {
        return 7;
    }

    public boolean i(String s)
    {
        return b().equals(s);
    }

    public void a(String s)
    {
        i.a(s);
    }

    void a(DataOutputStream dataoutputstream)
        throws IOException
    {
        dataoutputstream.writeByte(7);
        dataoutputstream.writeShort(i.j());
    }

    void a(DataOutputStream dataoutputstream, Hashtable hashtable)
        throws IOException
    {
label0:
        {
            dataoutputstream.writeByte(7);
            zs zs1 = (zs)hashtable.get(i);
            if(zs1 != null)
            {
                dataoutputstream.writeShort(zs1.j());
                if(!is.g)
                    break label0;
            }
            dataoutputstream.writeShort(i.j());
        }
    }
}